package cn.lenchu.stock.model;

/**
 * @author lenchu
 */
public interface Stock {

    /**
     * 获取本系统 Stock 标准编码
     * <br>例:
     <tr>
         <td>SH600519</td>
         <td>沪市代码</td>
     </tr>
     <tr>
         <td>SZ000002</td>
         <td>深市代码</td>
     </tr>
     <tr>
         <td>HK00700</td>
         <td>港市代码</td>
     </tr>
     <tr>
         <td>JJ006327</td>
         <td>基金代码</td>
     </tr>
     * @see StandardCodeTypeEnum
     * @return 标准编码
     */
    String getCode();

    /**
     * 获取名称
     * @return 名称
     */
    String getName();

    /**
     * 获取市价
     * @return 市价
     */
    Double getPrice();

    /**
     * 获取数据更新时间
     * @return 数据更新时间
     */
    Long getUpdateTime();

    /**
     * 数据是否完整
     * @return 数据是否完整
     */
    default boolean dataComplete() {
        return getCode() != null && getName() != null && getPrice() != null;
    }
}
